﻿using System;
using libGameCheckers;
using libEngineAI;
using libEngineAI.Interfaces;
using libEngineAI.Engines;
using libGameCheckers.Boards;
using log4net;

namespace DarkMaiden
{
	class MainClass
	{
		public static void Main( string [] args )
		{
			log4net.Config.XmlConfigurator.Configure();

			Checkers game = new Checkers() 
			{ 
				MaxCoordinates = new libEngineAI.Coordinate() { x = 8, y = 8 },
			};

			IBoard Board = new ConsoleBoard() { Game = game, MaxCoordinates = game.MaxCoordinates, PlayerType = PlayerType.HUMAN };
			game.Board = Board;

			/* Humano vs Humano */
			/*
			game.WhitePlayer = ( IPlayer )Board;
			game.BlackPlayer = ( IPlayer )Board;
			*/

			/* Humano vs Engine */
			game.WhitePlayer = ( IPlayer )Board;
			game.BlackPlayer = new MiniMaxEngine() { PlayerType = PlayerType.COMPUTER, Team = TeamEnum.BLACK, Level = 5 };


			/* Engine vs Engine */
			//game.WhitePlayer = new MiniMaxEngine() { PlayerType = PlayerType.COMPUTER, Team = TeamEnum.WHITE, Level = 3 };
			//game.BlackPlayer = new MiniMaxEngine() { PlayerType = PlayerType.COMPUTER, Team = TeamEnum.BLACK, Level = 3 };

			game.Initialize();
			game.Start();
		}
	}
}
